//
//  AliyunOSSPutObject.h
//  GSBlockChain
//
//  Created by guoshikeji_a on 2018/11/30.
//  Copyright © 2018 guoshikeji. All rights reserved.
//

#import <Foundation/Foundation.h>

NS_ASSUME_NONNULL_BEGIN

/**
 上传文件的目录级别 与后台目录同级
 */
typedef NS_ENUM(NSInteger,GSCOSSPutDirectoryType) {
    GSCOSSPutDirectoryTypeNone = 0,
    GSCOSSPutDirectoryTypeRootDirectory,//根目录
    GSCOSSPutDirectoryTypeBookimg,
    GSCOSSPutDirectoryTypeConfig,
    GSCOSSPutDirectoryTypeContract,
    GSCOSSPutDirectoryTypeHeader,
    GSCOSSPutDirectoryTypeIcons,
    GSCOSSPutDirectoryTypeMonth,
    GSCOSSPutDirectoryTypeOther,
    GSCOSSPutDirectoryTypeSoftwareImage,
    GSCOSSPutDirectoryTypeTest,
};

typedef NS_ENUM(NSInteger,GSCPutObjectType) {
    GSCPutObjectTypeNone = 0,
    GSCPutObjectTypeImageJEPG,
    GSCPutObjectTypeImagePNG,
    GSCPutObjectTypeAudioMP3,
};

@interface AliyunOSSPutObject : NSObject

/**
 The in-memory data to upload.
 */
@property (nonatomic, strong) NSData * uploadingData;
/**
 The local file path to upload. if both uploadingData  will uploading uploadingData
 */
@property (nonatomic, strong) NSURL * uploadingFileURL;

/**
 *objectKey is equel to file name  后缀名最好和文件统一
 */
@property (nonatomic, copy) NSString *objectKey;
- (NSString *)uuidObjectKeyForType:(GSCPutObjectType)type;

/**
 *GSCOSSPutDirectoryType 头像等图片上传时的目录路径
 */
@property (nonatomic, assign) GSCOSSPutDirectoryType directoryType;






/**
 上传目录subfix
 */
- (NSString *)directoryObjectKeyPath;


@end

NS_ASSUME_NONNULL_END
